home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / C / Libraries / MacWT 0.04 / wt / texture.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-10-31  |  1.4 KB  |  49 lines  |  [TEXT/MMCC]

  1. /*
  2. **  wt -- a 3d game engine
  3. **
  4. **  Copyright (C) 1994 by Chris Laurel
  5. **  email:  claurel@mr.net
  6. **  snail mail:  Chris Laurel, 5700 W Lake St #208,  St. Louis Park, MN  55416
  7. **
  8. **  This program is free software; you can redistribute it and/or modify
  9. **  it under the terms of the GNU General Public License as published by
  10. **  the Free Software Foundation; either version 2 of the License, or
  11. **  (at your option) any later version.
  12. **
  13. **  This program is distributed in the hope that it will be useful,
  14. **  but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. **  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. **  GNU General Public License for more details.
  17. **
  18. **  You should have received a copy of the GNU General Public License
  19. **  along with this program; if not, write to the Free Software
  20. **  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21. */
  22.  
  23. /* GIF87a code from Thomas Hamren (d0hampe@dtek.chalmers.se) */
  24.  
  25. #ifndef TEXTURE_H_
  26. #define TEXTURE_H_
  27.  
  28. #define TEXTURE_MAGIC "wttex"
  29. #define TEXTURE_MAGIC_LENGTH 5
  30.  
  31. #define GIF_MAGIC "GIF87"
  32.  
  33.  
  34. typedef struct {
  35.      int width, height;
  36.      int log2width;
  37.      unsigned char *texels;
  38. } Texture;
  39.  
  40. typedef enum { WTTEX, GIF87a, Unknown } TexFormat;
  41.  
  42. extern Texture *new_texture(int width, int height);
  43. extern Texture *read_texture_file(char *filename);
  44.  
  45. /* The following function is located in gifload.c, not texture.c. */
  46. extern Texture *LoadGIF(FILE *fp, char *fname);
  47.  
  48. #endif
  49.